The change to keep some server resources around
until destroy was causing us to not recreate
the right things when a surface is hidden and
then shown again. Make sure to recreate everything.
impl->mapped = TRUE;
}
+static void gdk_wayland_surface_destroy_surface (GdkSurface *surface);
+
static void
gdk_wayland_surface_show (GdkSurface *surface,
gboolean already_mapped)
{
GdkSurfaceImplWayland *impl = GDK_SURFACE_IMPL_WAYLAND (surface->impl);
+ gdk_wayland_surface_destroy_surface (surface);
+
if (!impl->display_server.wl_surface)
gdk_wayland_surface_create_surface (surface);